2
La réalité linéaire des tenseurs multidimensionnels
AI023Lesson 7
00:00

Bien que nous visualisions les données sous forme de grilles 2D pour des raisons mathématiques pratiques, le matériel ne voit qu'un flux continu de 1 octet. Comprendre cette « réalité linéaire » est une condition préalable à l'implémentation des opérations de réduction par ligne modèles de réduction—comme trouver la valeur maximale ou la somme des exposants.

1. Le principe de « pliage linéaire »

Chaque tenseur multidimensionnel est stocké physiquement de manière séquentielle. Pour implémenter $\text{softmax}(x_i) = \frac{e^{x_i}}{\sum_j e^{x_j}}$, nous devons identifier le segment linéaire représentant une ligne et effectuer des parcours afin de calculer le maximum et la somme.

Logique 2DMémoire physique 1D

2. Stabilité numérique

Pourquoi le softmax nécessite-t-il une stabilisation ? Des valeurs d'entrée élevées font exploser $e^{x}$. Nous assurons la stabilité par : $$\text{exp}(x_i - \text{max}(x))$$ Cela oblige le concepteur de noyau à effectuer une réduction linéaire en deux passages (maximum puis somme) avant la normalisation finale.

3. Vérification par lignes courtes

Lors du développement des noyaux Triton, nous utilisons le test uniquement sur des lignes courtes (par exemple, largeur 16) afin de nous assurer que notre arithmétique de pointeurs linéaires capte correctement chaque élément avant d'adapter à des charges de production.

main.py
TERMINALbash — 80x24
> Ready. Click "Run" to execute.
>